package com.cdu.guoxinan.www.smartcom.domian.pojo;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

/**
* 系统用户表
* @TableName user
*/
@Data
public class User implements Serializable {

    /**
    * 用户ID
    */
    @ApiModelProperty("用户ID")
    private Long userId;
    /**
    * 用户名
    */
    @NotBlank(message="[用户名]不能为空")
    @Size(max= 50,message="编码长度不能超过50")
    @ApiModelProperty("用户名")
    @Length(max= 50,message="编码长度不能超过50")
    private String username;
    /**
    * 密码哈希
    */
    @NotBlank(message="[密码]不能为空")
    @Size(max= 100,message="编码长度不能超过100")
    @ApiModelProperty("密码")
    @Length(max= 100,message="编码长度不能超过100")
    private String password;
    /**
    * 角色ID
    */
    @ApiModelProperty("角色ID")
    private Long roleId;
    /**
    * 真实姓名
    */
    @Size(max= 50,message="编码长度不能超过50")
    @ApiModelProperty("真实姓名")
    @Length(max= 50,message="编码长度不能超过50")
    private String realName;
    /**
    * 头像地址
    */
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("头像地址")
    @Length(max= 255,message="编码长度不能超过255")
    private String avatar;
    /**
    * 手机号
    */
    @Size(max= 20,message="编码长度不能超过20")
    @ApiModelProperty("手机号")
    @Length(max= 20,message="编码长度不能超过20")
    private String mobile;
    /**
    * 状态（1启用 2禁用）
    */
    @ApiModelProperty("状态（1启用 2禁用）")
    private Integer status;
    /**
    * 邮箱
    */
    @NotBlank(message="[邮箱]不能为空")
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("邮箱")
    @Length(max= 255,message="编码长度不能超过255")
    private String email;
}
